package com.pay.payment.entity;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 快递表
 * </p>
 *
 * @author lengxingzi
 * @since 2021-12-24
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("r_courier")
public class Courier implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private Integer parentId;

    /**
     * 客户ID
     */
    private Integer cstId;

    /**
     * APP ID
     */
    private Integer appId;

    /**
     * 用户id
     */
    private Integer userId;

    /**
     * 订单ID
     */
    private Integer orderId;

    /**
     * 产品id
     */
    private Integer productId;

    /**
     * 产品名称
     */
    private String productName;

    /**
     * 产品编号
     */
    private String productNo;

    private String courierId;

    /**
     * 快递方式 1寄付 2到付
     */
    private Integer type;

    /**
     * 快递编号
     */
    private String courierNo;

    /**
     * 物流公司
     */
    private String courierCompany;

    /**
     * 快递数量
     */
    private Integer num;

    /**
     * 省
     */
    private String customerProvince;

    /**
     * 市
     */
    private String customerCity;

    /**
     * 地区
     */
    private String customerArea;

    /**
     * 详细地址
     */
    private String customerAddress;

    /**
     * 快递费
     */
    private BigDecimal courierAmount;

    /**
     * 客户姓名
     */
    private String customerName;

    /**
     * 客户联系方式
     */
    private String customerPhone;

    /**
     * 发送人姓名
     */
    private String sendName;

    /**
     * 发送人联系方式
     */
    private String sendPhone;

    /**
     * 开始寄件时间
     */
    private LocalDateTime sendTime;

    /**
     * 来源
     */
    private String source;

    /**
     * 状态(1=初始 2=下单 3=派送 4=验收 5=退货)
     */
    private Integer status;

    @TableField(exist = false)
    private String statusDesc;

    /**
     * 单件描述
     */
   /* private String describe;*/

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 版本号
     */
    private Integer version;


}
